<template>
  <div class="tablebox">
    <rich-text
      :nodes="nodes"
      :class="node.classStr"
      :style="'user-select:' + parseSelect"
    ></rich-text>
  </div>
</template>
<script>
export default {
  name: "wxParseTable",
  props: {
    node: {
      type: Object,
      default() {
        return {};
      },
    },
  },
  inject: ["parseSelect"],
  data() {
    return {
      nodes: [],
    };
  },
  mounted() {
    this.nodes = this.loadNode([this.node]);
  },
  methods: {
    loadNode(node) {
      let obj = [];
      for (let children of node) {
        if (children.node == "element") {
          let t = {
            name: children.tag,
            attrs: {
              class: children.classStr,
              // style: children.styleStr,
            },
            children: children.nodes ? this.loadNode(children.nodes) : [],
          };

          obj.push(t);
        } else if (children.node == "text") {
          obj.push({
            type: "text",
            text: children.text,
          });
        }
      }
      return obj;
    },
  },
};
</script>
<style>
@import url("../parse.css");
</style>
